/**
 * 公共工具
 */
$.util={
		
	/**
	 * 将有父子级的列表转换为树形结构
	 * 将列表中的顶级父节点设置为一级树节点
	 */
	listToTree:function(list,idField,parentField)
	{
		var tree=[];
		var map={};
		if(list)
		{
			for(var i=0;i<list.length;i++)
			{
				var item=list[i];
				map[item[idField]]=item;
			}
			for(var j=0;j<list.length;j++)
			{
				var item=list[j];
				var parent=item[parentField];
				if( typeof parent === "object")
				{
					var parentId=parent[idField];
					if(!map[parentId]) //节点的父节点没有在列表中则去掉父节点，当前节点为顶级节点
					{
						parent=null; 
						//item[parentField]=null;
					}
					else
					{
						parent=map[parentId];
					}
				}
				else if(typeof parent === "string")
				{
					parent=map[parent];
				}
				item.parent=parent;
				if(parent)
				{
					if(!parent.children) parent.children=[];
					parent.children.push(item);
				}
				else
				{
					tree.push(item);
				}
			}
		}
		return tree;
	}
}